import Vue from 'vue'
import VueRouter from 'vue-router'

Vue.use(VueRouter)

const routes = [{
	path: '/',
	redirect: '/login'
}, {
	path: '/login',
	component: () => import('@/components/Login.vue')
}, {
	path: '/home',
	redirect: '/welcome',
	component: () => import('@/components/Home.vue'),
	children: [{
		path: '/welcome',
		component: () => import('@/components/Welcome.vue')
	}, {
		path: '/users',
		component: () => import('@/components/user/users.vue')
	}, {
		path: '/rights',
		component: () => import('@/components/power/Rights.vue')
	}, {
		path: '/roles',
		component: () => import('@/components/power/Roles.vue')
	}, {
		path: '/categories',
		component: () => import('@/components/goods/cate.vue')
	}, {
		path: '/params',
		component: () => import('@/components/goods/params.vue')
	}, {
		path: '/goods',
		component: () => import('@/components/goods/list.vue')
	}, {
		path: '/goods/add',
		component: () => import('@/components/goods/add.vue')
	}, {
		path: '/goods/*',
		redirect: '/*'
	}, {
		path: '/orders',
		component: () => import('@/components/order/orders.vue')
	}, {
		path: '/reports',
		component: () => import('@/components/report/reports.vue')
	}]
}]

const router = new VueRouter({
	routes
})

router.beforeEach((to, from, next) => {
	if (to.path === '/login') return next()

	const tokenStr = window.sessionStorage.getItem('token')
	if (!tokenStr) return next('/login')
	next()
})

export default router
